package com.lorenzogao.pley.ui.di.component

import android.app.Application
import com.lorenzogao.pley.common.DownloadModule
import com.lorenzogao.pley.common.rx.RxErrorHandler
import com.lorenzogao.pley.ui.data.http.ApiService
import com.lorenzogao.pley.ui.di.moduel.AppModule
import com.lorenzogao.pley.ui.di.moduel.HttpModule
import dagger.Component
import zlc.season.rxdownload2.RxDownload
import javax.inject.Singleton

/**
 * 作者：Lorenzo Gao
 * Date: 2017/12/27
 * Time: 13:30
 * 邮箱：2508719070@qq.com
 * Description:
 */

@Singleton
@Component(modules = [(AppModule::class), (HttpModule::class), (DownloadModule::class)])
interface AppComponent {


    fun getApiService(): ApiService


    fun getApplication(): Application

    fun getRxErrorHandler(): RxErrorHandler

    fun getRxDownload(): RxDownload


}